package nf.translat;

import java.util.regex.Matcher;
import java.util.regex.Pattern;
import nf.translat.model.db;
import nf.translat.model.var;
/**
 * 第四列的解析特殊数据解析函数 不是必须有 每个平台可能也不一样  
 * @author lishang
 */
public class DingxinParse extends MysqlTranslat.Parse {
    /**
     * 示例 根据地址信息配置 区域id
     * @param key   来源表的字段名 
     * @param row   来源表的所有字段
     * @param adds  目的表添加字段  
     * @return 
     */
    public var setCityId(String key, var row,var adds){
        var v=row.get(key);
        if(v.isEmpyt())   return v;
        String name=v.toString();
        if(name.matches("[省市区]")){
            Matcher m = Pattern.compile("(.+[省市区])").matcher(name);
            while (m.find()) {
                String k = m.group();
                if(k.matches("省")) {
                    var code=db.getInstance("nf").findOne("base_province","province_name="+k).get("province_code");
                    adds.set("province_code", code);
                }
                else if(k.matches("市")) {
                    var code=db.getInstance("nf").findOne("base_city","city_name="+k).get("city_code");
                    adds.set("city_code", code);
                }
                else if(k.matches("区")) {
                    var code=db.getInstance("nf").findOne("base_country","country_name="+k).get("country_code");
                    adds.set("country_code", code);
                }
            }
        }
        adds.set("province_code", "100010");//演示字段添加 记得去掉  
        return v;
    }
    
    //影院code从id转换  
    public var hallCodeById(String key,var row,var adds){
        var id=row.get(key);
        var rt=db.getInstance("nf").findOne("base_hall_info","id="+id);
        return rt.get("hall_code");
    }
}